package com.nit.lab.vote.service.vote;

import com.nit.lab.vote.dto.utils.OpResultDTO;
import com.nit.lab.vote.dto.utils.TableReqDTO;
import com.nit.lab.vote.dto.utils.TableRspDTO;
import com.nit.lab.vote.dto.vote.VoteDTO;

import java.util.List;

public interface VoteService {
    /**
     * @Description: 管理员获取投票日志
     * @Date: 12/15
     */
    TableRspDTO logVote(TableReqDTO tableReqDTO) throws Exception;

    /**
     * @Description: 管理员获取所有投票记录
     * @Date: 12/11
     */
    TableRspDTO listAll(TableReqDTO tableReqDTO) throws Exception;

    /**
     * @Description: 评委投票
     * @Date: 2020/12/12
     */
    OpResultDTO addList(String token, List<VoteDTO> voteDTOS) throws Exception;

    TableRspDTO listVote(TableReqDTO tableReqDTO) throws Exception;

    TableRspDTO queryVoted(String token,TableReqDTO tableReqDTO) throws Exception;

    TableRspDTO queryVoteResult(String token,TableReqDTO tableReqDTO) throws Exception;

    /**
     * @Description: 管理员获取投票日志并导出excal
     * @Date: 12/16
     */
    List<VoteDTO> voteExcel(TableReqDTO tableReqDTO) throws Exception;
}
